草庐IT

iphone - 创建到 NSMutableArray 时动态计算 TextField

全部标签

Ruby:创建 Gzipped Tar 存档

使用Ruby创建gzippedtar存档的最佳方法是什么?我有一个Rails应用程序需要创建一个压缩存档以响应用户操作。理想情况下,可以直接写入压缩文件,而无需先生成中间临时文件。RubyZlib库似乎支持直接gzip压缩。我如何将它与tar输出结合起来?似乎已经提出了一些准解决方案,并且很多信息似乎已经过时了。例如,“rubytar”在Google中的最高搜索结果为thisthread,它于2007年开始,显然没有解决。另一个排名靠前的搜索结果是thisonedescribingrubytar.它可以追溯到2002年,但公告并没有完全激发信心。我也看到过各种关于unixtar之类的s

ruby - 动态需要文件?

有没有人足够了解Ruby的require来告诉我以下语法是否有效:classSomethingdefinitialize(mode)casemodewhen:onethenrequire'some_gem'when:twothenrequire'other_gem'endendends=Something.new如果是这样,需要将gem放入全局命名空间,就像在文件顶部时一样? 最佳答案 Ifso,wouldtherequireplacethegemintotheglobalnamespaceasthesamerequireatthe

ruby-on-rails - Rails 中的动态常量定义

我使用以下语法在Rails的初始化程序中定义常量:MyModule.const_set('MYCONSTANT','foobar')如果我启动控制台并写入,它就可以工作MyModule::MYCONSTANT我按预期收到了foobar。问题是,当我尝试在模型中调用它时,常量不存在。D应该在哪里动态定义我的常量,以便它在我的模型中也可用?如果我在我的lib/mymodule.rb中静态定义它,它可以工作,但我想在运行时定义一些常量。 最佳答案 如果你想保留config.cache_classes=false,你可以把MyModule.

ruby - 如何创建匹配所有请求并指向一个资源/页面的 Rails 3 路由?

我有一个需要暂时停止服务的Rails应用程序(Rails3.0)。虽然这是有效的,但我想创建一个新路由,将所有请求定向到单个静态内容。我设置了一个Controller来为我的静态页面提供服务。我试过这样的:match'*'=>'content#holding'和match'*/*'=>'content#holding'匹配通配符路由,如下所述:Rails3routeglobbing没有成功。这可能是一个非常简单的答案,但我想不通。/编辑/忘了说我在routes.rb文件的最顶部确实有这条规则。 最佳答案 Rails需要将url参数绑

ruby - 计算 Ruby 中的第 95 个百分位数?

这里的这个问题似乎没有帮助:CalculatingPercentiles(Ruby)我想根据数字数组计算第95个百分位数(或者实际上是任何其他所需的百分位数)。最终,这将应用于Rails以计算大量记录的分布。但是,如果我能确定如何从一组数字中准确地确定给定的百分位数,我就可以从那里开始。坦率地说,令我惊讶的是我还没有找到某种具有这种功能的gem——我还没有找到。非常感谢您的帮助。 最佳答案 如果您想复制Excel的PERCENTILE函数,请尝试以下操作:defpercentile(values,percentile)values_

ruby-on-rails - 如何在 Rails 中为每个表创建完整的审计日志?

我们最近开始在我们公司插入合规性,并且需要保留对我们当前在Rails应用程序中管理的数据更改的完整历史记录。我们已经获准将每个操作的描述性内容简单地推送到日志文件,这是一种相当不引人注目的方式。我倾向于在ApplicationController中做这样的事情:around_filter:set_logger_usernamedefset_logger_usernameThread.current["username"]=current_user.login||"guest"yieldThread.current["username"]=nilend然后创建一个看起来像这样的观察者:c

ruby-on-rails - CarrierWave:为所有版本化文件创建相同、唯一的文件名

在详细介绍之前,我先开门见山:有没有人想出一种方法让Carrierwave将文件的名称保存为时间戳或每个文件唯一的任意字符串?默认情况下,Carrierwave将每个文件及其替代版本保存在自己的目录中(以型号ID号命名)。我不喜欢这个,因为不是一个目录有1,000个,为了使用大的整数,文件(在我的例子中是图片),我们得到一个目录有1,000个子目录,每个子目录有一个或两个文件。呸。现在,当您将uploader的store_dir方法重写为如下内容时:defstore_dir"uploads/#{model.class.to_s.underscore}/#{mounted_as}"end

ruby - 具有动态条件的 rspec `its` 语法

我真的很喜欢将contexts、subjects和its与rspec一起使用来真正清理我的测试代码。典型例子:context"asauser"dosubject{Factory:user}its(:name){should=="Bob"}end但我想不通的是如何使这种情况动态化(即基于其他对象)。its似乎对block内的属性进行实例评估,因此我无法访问它周围的所有内容。我很想做这样的事情:its(:name){should==subject.contact.name}但我看不出有什么方法可以实现这一点。有谁知道是否有一些方法代理到这个实例eval来访问原始对象?或者如果有任何其他方法

Ruby:动态生成attribute_accessor

我正在尝试从散列(使用嵌套散列)生成attr_reader,以便它自动镜像instance_variable创建。这是我目前所拥有的:data={:@datetime=>'2011-11-23',:@duration=>'90',:@class=>{:@price=>'£7',:@level=>'all'}}classEvent#attr_reader:datetime,:duration,:class,:price,:leveldefinit(data,recursion)data.eachdo|name,value|ifvalue.is_a?Hashinit(value,recur

ruby-on-rails - 计算两天之间的工作日数

我需要计算两个日期之间的工作日数。我怎样才能使用Ruby(或Rails...如果有特定于Rails的助手)来实现它。同样,我希望能够将工作日添加到给定日期。因此,如果某个日期是星期四,我添加了3个工作日,它会在下星期二返回。 最佳答案 看看business_time.它可以用于您所要求的两种情况。计算两个日期之间的工作日:wednesday=Date.parse("October17,2018")monday=Date.parse("October22,2018")wednesday.business_days_until(mond